+2006-06-26 Kristian Rietveld <kris@gtk.org>
+
+ Make the insert and set functions somewhat more convenient.
+ (#343841, David Necas).
+
+ * gtk/gtkliststore.c (gtk_list_store_insert_with_values): allow
+ a NULL iter,
+ (gtk_list_store_insert_with_valuesv): likewise.
+
+ * gtk/gtktreestore.c (gtk_tree_store_insert_with_values): ditto,
+ (gtk_tree_store_insert_with_valuesv): likewise.
+
2006-06-26 Michael Natterer <mitch@imendio.com>
* gtk/gtktextview.c (gtk_text_view_size_allocate): revert "keep
+2006-06-26 Kristian Rietveld <kris@gtk.org>
+
+ Make the insert and set functions somewhat more convenient.
+ (#343841, David Necas).
+
+ * gtk/gtkliststore.c (gtk_list_store_insert_with_values): allow
+ a NULL iter,
+ (gtk_list_store_insert_with_valuesv): likewise.
+
+ * gtk/gtktreestore.c (gtk_tree_store_insert_with_values): ditto,
+ (gtk_tree_store_insert_with_valuesv): likewise.
+
2006-06-26 Michael Natterer <mitch@imendio.com>
* gtk/gtktextview.c (gtk_text_view_size_allocate): revert "keep
/**
* gtk_list_store_insert_with_values:
* @list_store: A #GtkListStore
- * @iter: An unset #GtkTreeIter to set to the new row
+ * @iter: An unset #GtkTreeIter to set to the new row, or %NULL.
* @position: position to insert the new row
* @Varargs: pairs of column number and value, terminated with -1
*
GtkTreePath *path;
GtkSequence *seq;
GtkSequencePtr ptr;
+ GtkTreeIter tmp_iter;
gint length;
gboolean changed = FALSE;
gboolean maybe_need_sort = FALSE;
/* FIXME: refactor to reduce overlap with gtk_list_store_set() */
g_return_if_fail (GTK_IS_LIST_STORE (list_store));
- g_return_if_fail (iter != NULL);
+
+ if (!iter)
+ iter = &tmp_iter;
list_store->columns_dirty = TRUE;
/**
* gtk_list_store_insert_with_valuesv:
* @list_store: A #GtkListStore
- * @iter: An unset #GtkTreeIter to set to the new row
+ * @iter: An unset #GtkTreeIter to set to the new row, or %NULL.
* @position: position to insert the new row
* @columns: an array of column numbers
* @values: an array of GValues
GtkTreePath *path;
GtkSequence *seq;
GtkSequencePtr ptr;
+ GtkTreeIter tmp_iter;
gint length;
gboolean changed = FALSE;
gboolean maybe_need_sort = FALSE;
* gtk_list_store_insert_with_values()
*/
g_return_if_fail (GTK_IS_LIST_STORE (list_store));
- g_return_if_fail (iter != NULL);
+
+ if (!iter)
+ iter = &tmp_iter;
list_store->columns_dirty = TRUE;
/**
* gtk_tree_store_insert_with_values:
* @tree_store: A #GtkTreeStore
- * @iter: An unset #GtkTreeIter to set the new row
+ * @iter: An unset #GtkTreeIter to set the new row, or %NULL.
* @parent: A valid #GtkTreeIter, or %NULL
* @position: position to insert the new row
* @Varargs: pairs of column number and value, terminated with -1
GtkTreePath *path;
GNode *parent_node;
GNode *new_node;
+ GtkTreeIter tmp_iter;
va_list var_args;
gboolean changed = FALSE;
gboolean maybe_need_sort = FALSE;
g_return_if_fail (GTK_IS_TREE_STORE (tree_store));
- g_return_if_fail (iter != NULL);
+
+ if (!iter)
+ iter = &tmp_iter;
+
if (parent)
g_return_if_fail (VALID_ITER (parent, tree_store));
/**
* gtk_tree_store_insert_with_valuesv:
* @tree_store: A #GtkTreeStore
- * @iter: An unset #GtkTreeIter to set the new row
+ * @iter: An unset #GtkTreeIter to set the new row, or %NULL.
* @parent: A valid #GtkTreeIter, or %NULL
* @position: position to insert the new row
* @columns: an array of column numbers
GtkTreePath *path;
GNode *parent_node;
GNode *new_node;
+ GtkTreeIter tmp_iter;
gboolean changed = FALSE;
gboolean maybe_need_sort = FALSE;
GtkTreeIterCompareFunc func = NULL;
gint i;
g_return_if_fail (GTK_IS_TREE_STORE (tree_store));
- g_return_if_fail (iter != NULL);
+
+ if (!iter)
+ iter = &tmp_iter;
+
if (parent)
g_return_if_fail (VALID_ITER (parent, tree_store));